﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace KnowWare.Model
{
    public class Hold
    {
        private int _stand, _placering, _pointSum;
        private string _holdNavn, _kategori;
        private List<Kriterie> _kriterier;
        private bool _erTildeltPoint = false;

        public Hold(int stand, string holdNavn, string kategori)
        {
            _stand = stand;
            _kategori = kategori;
            _placering = 0;
            _pointSum = 0;
            _kriterier = null;
            _holdNavn = holdNavn;
        }

        public void Summer(List<int> point)
        {
            _pointSum = 0;
            for (int i = 0; i < point.Count; i++)
            {
                _pointSum += point[i];
                _kriterier[i].Antal = point[i];
            }
        }

        public void KriterieFiller(List<string> krit)
        {
            _kriterier = new List<Kriterie>();
            foreach (var navn in krit)
            {
                _kriterier.Add(new Kriterie(navn));
            }
        }

        #region Properties
        
        public int Stand
        {
            get
            {
                return _stand;
            }
            set
            {
                _stand = value;
            }
        }

        public string Kategori
        {
            get
            {
                return _kategori;
            }
            set
            {
                _kategori = value;
            }
        }

        public int Placering
        {
            get
            {
                return _placering;
            }
            set
            {
                _placering = value;
            }
        }

        public int PointSum
        {
            get
            {
                return _pointSum;
            }
            set
            {
                _pointSum = value;
            }
        }

        public string HoldNavn
        {
            get
            {
                return _holdNavn;
            }
            set
            {
                _holdNavn = value;
            }
        }

        public List<Kriterie> Kriterier
        {
            get
            {
                return _kriterier;
            }
            set
            {
                _kriterier = value;
            }
        }

        public bool ErTildeltPoint
        {
            get { return _erTildeltPoint; }
            set { _erTildeltPoint = value; }
        }

        #endregion

    }
}
